

import ingresso.Categoria
import ingresso.Cidade
import ingresso.Comentario
import ingresso.Evento
import ingresso.Post
import ingresso.Usuario

class BootStrap {

    def init = { servletContext ->
		if(Usuario.list().size()==0){
			Usuario usuario1 = new Usuario(senha:"123456"					
						,email:"admin@fa7.edu.br"
						,nome:"Admin"
						,cpf:"659.163.544-01"
						,dataNascimento:"01/01/2000"
						,endereco:"Av. Alm. Maximiano da Fonseca, 1395 - Eng. Luciano Cavalcante - CEP 60811 - 020"
						,fone:"(85)9999-9999"
						,tipoUsuario:"Admin").save(failOnError: true)
						
			Usuario usuario2 = new Usuario(senha:"123456"
				,email:"cliente01@gmail.com"
				,nome:"Cliente Legal"
				,cpf:"496.709.311-69"
				,dataNascimento:"01/01/1999"
				,endereco:"Av. Alm. Maximiano da Fonseca, 1380 - Eng. Luciano Cavalcante - CEP 60811 - 020"
				,fone:"(85)8888-8888"
				,tipoUsuario:"Cliente").save(failOnError: true)
				
			Usuario.list().add(usuario1);
			Usuario.list().add(usuario2);					
		}

		if(Cidade.list().size() == 0){
			Cidade fortaleza = new Cidade(nome:"Fortaleza",estado:"CE",cep:"60000000").save()
			Cidade sp = new Cidade(nome:"São Paulo",estado:"SP",cep:"01035000").save()
			
			Cidade.list().add(fortaleza)
			Cidade.list().add(sp)
		}
		
		if(Categoria.list().size() == 0){
			Categoria show = new Categoria(tipo:"Show",descricao:"show legal").save()
			Categoria cinema = new Categoria(tipo:"Cinema",descricao:"cinema é massa!").save()
			Categoria jogo = new Categoria(tipo:"Jogo",descricao:"PEBA").save()
			Categoria corrida = new Categoria(tipo:"Corrida",descricao:"legalzinho").save()
			
			Categoria.list().add(show)
			Categoria.list().add(cinema)
			Categoria.list().add(jogo)
			Categoria.list().add(corrida)			
		}
		
//		nome blank:false, size: 3..100
//		data blank:false
//		dataEncerramento blank:false
//		valor min: (double)0
//		descricao blank:false, minSize: 50
//		categoria nullable:false
//		cidade nullable:false
		
		if(Evento.list().size()==0){
			Categoria cat1 = Categoria.list().get(0);
			Categoria cat2 = Categoria.list().get(1);
			Categoria cat3 = Categoria.list().get(2);
			Categoria cat4 = Categoria.list().get(3);
			
			Cidade cid1 = Cidade.list().get(0)
			Cidade cid2 = Cidade.list().get(1)
			
			Evento evento1 = new Evento(nome:"O hobbit: a desolação de Smaug",
										data:new Date(2013,12,12),
										dataEncerramento: new Date(2014,01,30),
										valor: "14.00",
										descricao: "Segundo filme da trilogia de adaptação da obra-prima The Hobbit, de J.R.R. Tolkien, O Hobbit: A Desolação de Smaug dá continuidade à aventura de Bilbo Bolseiro em sua épica jornada com o Mago Gandalf e treze Anões, liderados por Thorin Escudo de Carvalho, para o Reino dos Anões de Erebor. Tendo sobrevivido ao início de sua jornada inesperada, o grupo continua em direção ao Leste, encontrando no caminho o metamorfo Beorn e aranhas gigantes da traiçoeira Floresta das Trevas. Depois de escapar do cativeiro dos perigosos Elfos da Floresta, os anões viajam para Esgaroth, a Cidade do Lago, e finalmente chegam à Montanha Solitária, onde devem enfrentar o maior perigo de todos – uma criatura mais aterrorizante que qualquer outra; uma que testará não apenas o nível de coragem dos aventureiros, mas também os limites de sua amizade e a sabedoria da própria jornada – o dragão Smaug.",
										categoria: cat2,
										cidade: cid2).save()
										
			Evento evento2 = new Evento(nome:"Elton John",
										data:new Date(2014,02,26),
										dataEncerramento: new Date(2014,02,26),
										valor: "400.00",
										descricao: "O músico, cavaleiro da coroa britânica, traz à capital cearense o show de seu primeiro disco de estúdio nos últimos sete anos, produzido por uma lenda de guitarra, o bluesman T-Bone Burnett",
										categoria: cat1,
										cidade: cid1).save()
			Evento.list().add(evento1)
			Evento.list().add(evento2)
		}
				
		if(Post.list().size()==0){
			def post = new Post(titulo: 'Vamos agitar', conteudo: 'Agite seu evento com modernidade e elegancia', autor: 'wanessa', dataPost: new Date()).save()
			def comentario = post.addToComentarios(new Comentario(autor: 'Joao', conteudo: 'Boas dicas! Postem cada vez mais!'))
			post.save()
			
			new Post(titulo: 'Amigos secretos:4 dicas para deixar a brincadeira mais divertida!', conteudo: 'Pode preparar a criatividade e separar aquele tempinho na agenda: já é hora de comprar os presentes de fim de ano!', autor: 'wanessa', dataPost: new Date() - 10).save()
		}
		
	}
    def destroy = {
    }
}
